package mc.dao;

import java.util.ArrayList;
import java.util.List;

import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Example;
import org.hibernate.criterion.MatchMode;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import mc.domain.Lekarz;


public class LekarzManagerDAOHb extends HibernateDaoSupport implements ILekarzManagerDAO {

	public void deleteLekarz(Lekarz lekarz) {
		getHibernateTemplate().delete(lekarz);
	}

	public Lekarz getLekarzById(int id) {
		return (Lekarz)getHibernateTemplate().get(Lekarz.class, new Integer(id));
	}

	public void saveLekarz(Lekarz lekarz) {
		getHibernateTemplate().saveOrUpdate(lekarz);

	}

	public List<Lekarz> getAllLekarze() {
		return (ArrayList<Lekarz>) getHibernateTemplate().find("from Lekarz");
	}

	public List<Lekarz> getLekarzByExample(Lekarz l) {
		return (ArrayList<Lekarz>) getHibernateTemplate().findByCriteria(DetachedCriteria.forClass(Lekarz.class).add(
				Example.create(l).excludeZeroes().enableLike(MatchMode.START).ignoreCase()));
	}

	public void deleteLekarz(int id) {
		getHibernateTemplate().bulkUpdate("delete from Lekarz where id=?",id);
		
	}



}
